Software users are familiar with the existing problem that software applications installed on one machine in a network are not sharable between other machines in the network. As an example, consider Machine M1 and Machine M2, which belong to the same network. Machine M1 uses a first operating system, OS#1 (for example, Microsoft's Windows 2000 operating system), and Machine M2 uses a second operating system, OS#2 (for example, Microsoft's Windows 2003 Server operating system).
A user installs a software application, for example, Microsoft Word, on Machine M1. The software application operates as expected when used from Machine M1. The user is, however, unable to use the same software application on Machine M2, which is typical in many small networks in which users share machines. She or he has no other option but to make a fresh installation of the desired software application on Machine M2. This can be an understandable source of frustration.
Similar considerations apply to machines that operate a multibooting environment; that is, have multiple operating systems or multiple versions of an operating system installed. This is often the case for software developers that use multiple software operating systems for software development and testing purposes. Software applications installed in one operating system cannot be used in other operating systems installed on that machine. Instead, the software application is installed under each operating system in turn. This limitation is burdensome, and an unwarranted drain on productivity.
A need clearly exists, in view of the above observations, for an improved manner of deploying software applications.